Skip to content

feat: switch all examples to cpiovfs (zero-copy initrd) - #14

Merged
danbugs merged 5 commits into
mainfrom
cpiovfs-upstream
May 13, 2026
Merged

feat: switch all examples to cpiovfs (zero-copy initrd)#14
danbugs merged 5 commits into
mainfrom
cpiovfs-upstream

Conversation

@danbugs

@danbugs danbugs commented May 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Switches all 12 ramfs-based examples to cpiovfs for zero-copy initrd mounting — files are served directly from the CPIO archive mapping instead of being unpacked into guest heap
  • Adds initrd re-map on snapshot restore (map_file_cow at 0xC0000000) so cpiovfs works with pyhl's snapshot/restore flow
  • Points all examples to upstream unikraft/unikraft plat-hyperlight branch (cpiovfs fixes have been merged upstream)
  • Updates CI fallback clone logic to parse source URLs from kraft.yaml instead of hardcoding the unikraft/ org
  • Powershell already used cpiovfs (with ramfs for /tmp and /root) — only its source URLs are updated

@danbugs
danbugs force-pushed the cpiovfs-upstream branch from 3f912c2 to 23f632b Compare May 13, 2026 00:04
@danbugs danbugs changed the title feat: cpiovfs snapshot support — initrd re-map on restore feat: switch all examples to cpiovfs (zero-copy initrd) May 13, 2026
danbugs added 4 commits May 13, 2026 03:16
Signed-off-by: danbugs <danilochiarlone@gmail.com>
…pp-elfloader to danbugs fork

Signed-off-by: danbugs <danilochiarlone@gmail.com>
Point unikraft source to danbugs/unikraft cpiovfs-fix branch which
includes the vnop_write_t signature fix and IST re-entry prevention.
Update CI fallback clone logic to parse source URLs from kraft.yaml
instead of hardcoding unikraft/ org.

Signed-off-by: danbugs <danilochiarlone@gmail.com>
cpiovfs write fix (ephemeral nodes) handles writes natively now,
so the separate ramfs workaround mounts are no longer needed.

Signed-off-by: danbugs <danilochiarlone@gmail.com>
@danbugs
danbugs force-pushed the cpiovfs-upstream branch from c7eccfc to c2cc581 Compare May 13, 2026 03:16

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Linux Benchmarks

Details
Benchmark suite Current: aac4571 Previous: 6e0b38e Ratio
hello_world (median) 20 ms 20 ms 1
pandas (median) 110 ms 100 ms 1.10
density (per VM) 7 MB 6 MB 1.17
snapshot (disk) 385 MiB 648 MiB 0.59

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Windows Benchmarks

Details
Benchmark suite Current: aac4571 Previous: 6e0b38e Ratio
hello_world (median) 252 ms 262 ms 0.96
pandas (median) 807 ms 1042 ms 0.77
density (per VM) 6 MB 6 MB 1
snapshot (disk) 392 MiB 673 MiB 0.58

This comment was automatically generated by workflow using github-action-benchmark.

…-hyperlight

Signed-off-by: danbugs <danilochiarlone@gmail.com>
@danbugs
danbugs marked this pull request as ready for review May 13, 2026 15:59
@danbugs
danbugs merged commit 094c5cf into main May 13, 2026
74 checks passed
@danbugs
danbugs deleted the cpiovfs-upstream branch May 13, 2026 15:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant